Web pages are widely used to distribute information though the internet and intranets to users possessing access to a network having connectivity, ultimately, to a web server storing and serving the web pages. Web pages have become a widely accepted vehicle for disseminating information because of the relative ease that web pages can be accessed by a wide variety of web viewing platforms. Of course personal computers can display web pages, but the ability to access web pages goes beyond personal computers to include laptop computers, personal digital assistants, net books, e-readers, smart phones, tablet computers and more.
Although once simple, web pages now can be relatively complex including items such as scripts, frames, embedded videos, embedded audio and the like. Such complexity can increase the response time of a web browser (browser) to the user. When a user first navigates to a relatively complex web page, the browser first must gather the web page data, interpret, construct and then display the web page. Conversely, when the user navigates away from a web page, the browser typically has to close resources and connections and terminate any running scripts before navigating away. In both cases, there may be a perceptible delay of a web browser to the user's commands. The response can be made worse by having a relatively less powerful processor or by accessing a relatively low performing network.
One way to improve user experience is to cache a web page prior to navigating away from it. By caching the web page, if the user navigates back to the cached web page, the displaying of the web page can occur relatively quickly since elements for the web page have been retained in the cache. Some web pages, however, are designed not to be cached. These web pages can be, for example, related to financial institutions where a web cache can present a security risk. Other web pages are not cached because they can have associated with them one or more scripts that are executed when the user navigates away. Sometimes, these scripts are not added by the web page author, but instead through third parties inserted as in-line advertisements or other web content. Honoring these scripts can reduce performance and degrade the user experience.
Therefore, what is desired is a way to enhance a browser's ability to cache web pages and improve the overall user experience.